/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package arbre;

import java.util.HashMap;

/**
 *
 * @author ksz
 */
public class NoeudInterne extends Noeud {

    private Noeud gauche;
    private Noeud droit;

    public NoeudInterne() {
    }

    public NoeudInterne(Noeud gauche, Noeud droit) {
        this.gauche = gauche;
        this.droit = droit;
    }

    public Noeud getFilsDroit() {
        return droit;
    }

    public Noeud getFilsGauche() {
        return gauche;
    }

    public Integer getPrioritee() {

        Integer prioritee = 0;

        if (gauche != null) {
            prioritee += gauche.getPrioritee();
        }

        if (droit != null) {
            prioritee += droit.getPrioritee();
        }

        return prioritee;
    }

    public Element getContenu() {
        return null;
    }

    @Override
    public boolean estInterne() {
        return true;
    }

    @Override
    public void creerBitsCode(StringBuffer code, HashMap bitsCodeDictionnaire) {

        code.append("0");

        if (gauche != null) {
            gauche.creerBitsCode(code, bitsCodeDictionnaire);
        }

        code.deleteCharAt(code.length() - 1);

        code.append("1");

        if (droit != null) {
            droit.creerBitsCode(code, bitsCodeDictionnaire);
        }

        code.deleteCharAt(code.length() - 1);

    }
}
